The acquisition of data and subsequent generation of computer models for real-world objects is of interest in many industries and for many applications including architecture, physical plant design, entertainment applications (e.g., in movies and games), surveying, manufacturing quality control, medical imaging, and construction, as well as in cartography and geography applications. In order to obtain accurate 3D models of an object, as well as the area in which that object exists in the real world, it is necessary to take accurate measurements or samplings of surfaces that make up the object and any elements of the surrounding area. Historically, this sampling was carried out using techniques that provided samples at the rate of tens or hundreds per hour at most.
Recent advances in scanning technology, such as technologies utilizing LIDAR scanning, have resulted in the ability to collect billions of point samples on physical surfaces, over large areas, in a matter of hours. In a LIDAR scanning process, the scanning device scans a laser beam across a scene that encompasses the structure of interest and the beam reflected from the scene is captured by the scanning device. The scanning device thus measures a large number of points that lie on surfaces visible in the scene. Each scan point has a measured location in 3D space, to within some measurement error, that typically is recorded relative to a point (x,y,z) in the local coordinate system of the scanner. The resulting collection of points is typically referred to as one or more point clouds, where each point cloud can include points that lie on many different surfaces in the scanned view. LIDAR systems are described, for example, in U.S. Pat. No. 5,988,862, issued on Nov. 3, 1999, titled “Integrated System for Quickly and Accurately Imaging and Modeling Three Dimensional Objects,” which is hereby incorporated herein by reference in its entirety to provide background information regarding the present invention.
FIG. 1 shows an exemplary LIDAR scanning system 100. Scanning system 100 utilizes a field digital vision (FDV) module 102 that includes a scanning device for scanning a target object 104, such as a building or a piece of machinery. The scanning device senses the position in three-dimensional space of selected points on the surface of the object 104. Based upon the light reflected back by the surface of the object 104, the FDV module 102 generates a point cloud 106 that represents the detected positions of the selected points. The point cloud 106 can also represent other attributes of the detected positions, such as reflectivity, surface color, and texture, where desired.
A control and processing station 108 interacts with the FDV 102 to provide control and targeting functions for the scanning sensor. In addition, the processing and control station 108 can utilize software to analyze groups of points in the point cloud 106 to generate a model of the object of interest 104 that is stored in a database 118. A user interface 116 allows a user to interact with the system 100, such as to view a two-dimensional (2D) representation of the three-dimensional (3D) point cloud 106, or to select a portion of the target object 104 to be viewed in higher detail. The processing and control station 108 can include any appropriate components, such as standard computer and/or processing components. The processing and control station 108 can also have computer code in resident memory, on a local hard drive or in a removable drive or other memory device, which can be programmed to the processing station 108 or obtained from a computer program product such as a CD-ROM or download signal. The computer code can include instructions for interacting with the FDV 102 and/or a user, and can include instructions for undertaking and completing any modeling and/or scanning process discussed, described, or suggested herein.
The FDV 102 can include an optical transceiver, shown in FIG. 1 as a LIDAR scanner 110, that is capable of scanning points of the target object 104, and that generates a data signal that precisely represents the position in 3D space of each scanned point. The data signals for the groups of scanned points can collectively constitute the point cloud 106. In addition, a video system 112 can be provided, which in one embodiment includes both wide angle and narrow angle CCD cameras. The wide angle CCD camera can acquire a video image of the object 104 and provides to the control and processing station 108, through a control/interface (C/I) module 114, a signal that represents the acquired video image. The acquired video image can be displayed to a user through the user interface 116 of the processing and control station 108. Through the user interface 116, the user can select a portion of the image containing an object to be scanned. In response to user input, the processing and control station 108 can provide a scanning control signal 120 to the optical transceiver 110 for controlling the portion of the surface of the object 104 that should be scanned by the transceiver 110.
The narrow angle CCD camera of the video system 112 can capture the intensity of light returned from each scan impingement point, along with any desired texture and color information, and can provide this captured information to the processing and control station 108. The processing and control station 108 can include a data processing system (e.g., a notebook computer or a graphics workstation) having special purpose software that, when executed, instructs the data processing system to perform the FDV 102 control and targeting functions, and also to perform the model generation functions discussed elsewhere herein. Once the object 104 has been scanned and the data transferred to the database 118, the data and/or instructions relating to the data can be displayed to the user.
Conventional LIDAR scanning systems, such as the Leica HDS3000 system and the Leica HDS4500 system, are monochromatic. That is, they generate distance information based upon time-related measurements of the output from a single wavelength laser. If any color information on the scanned object or scene is required, it is typically obtained using a second conventional, non-time resolved camera, as discussed above with respect to the FIG. 1 system 100. The auxiliary camera may be mounted in parallel (alongside, laterally displaced) with the LIDAR system or coaxially by the use of either a beam-splitter or a separate moving mirror to intermittently intercept the LIDAR optical path. The two sets of data images, the LIDAR data and conventional camera data, may further be combined using so-called “texture mapping” in which the non-time resolved color information obtained from the conventional camera data is superimposed upon the LIDAR data using dedicated software, so as to produce a pseudo “color LIDAR” image.
This approach to “color LIDAR” can enhance the perception of the scanned object or scene, but suffers from a number of disadvantages. As discussed above, a second camera is required, adding to system complexity and costs, and requiring additional system (camera-to-LIDAR) alignments and calibrations. The parallel systems also result in registration errors (physical and software) and possible parallax errors, and often operate on the basis of different color and LIDAR resolutions (pixel sizes, spot sizes). In brief, the result is a dual optical system that is not only complex, but also suffers from generally imperfect registration and mismatched optical resolutions.